package modelo;

import java.awt.Toolkit;

/**
 * 
 * @author matheus_campos
 *
 */
public class Localizacao {
	/**
	 * id para localizacao
	 */
	private int idLocalizacao;
	/**
	 * string para rua
	 */
	private String rua;
	/**
	 * string para numero da casa (contem string, pois ha a possibilidade de ser apartamento)
	 */
	private String numero;
	/**
	 * string para bairro
	 */
	private String bairro;
	/**
	 * String pra CEP modelo: ##.###-###
	 */
	
	private String cep;
	/**
	 * String para cidade
	 */
	private String cidade;
	
	/**
	 * String para estado, modelo: **
	 */
	private String estado;

	/**
	 * @return localizacao
	 */
	public int getIdLocalizacao() {
		return idLocalizacao;
	}

	/**
	 * @param idLocalizacao
	 */
	public void setIdLocalizacao(int idLocalizacao) {
		this.idLocalizacao = idLocalizacao;
	}

	/**
	 * @return rua
	 */
	public String getRua() {
		return rua;
	}

	/**
	 * @param rua
	 */
	public void setRua(String rua) {
		this.rua = rua;
	}

	/**
	 * @return num
	 */
	public String getNumero() {
		return numero;
	}

	/**
	 * @param numero
	 */
	public void setNumero(String numero) {
		this.numero = numero;
	}

	/**
	 * @return
	 */
	public String getBairro() {
		return bairro;
	}

	/**
	 * @param bairro
	 * 
	 */
	public void setBairro(String bairro) {
		this.bairro = bairro;
	}

	/**
	 * @return
	 */
	public String getCep() {
		return cep;
	}

	/**
	 * @param cep
	 */
	public void setCep(String cep) {
		this.cep = cep;
	}

	/**
	 * @return
	 */
	public String getCidade() {
		return cidade;
	}

	/**
	 * @param cidade
	 */
	public void setCidade(String cidade) {
		this.cidade = cidade;
	}

	/**
	 * @return
	 */
	public String getEstado() {
		return estado;
	}

	/**
	 * @param estado
	 */
	public void setEstado(String estado) {
		this.estado = estado;
	}

	/**
	 * @param idLocalizacao
	 * @param rua
	 * @param numero
	 * @param bairro
	 * @param cep
	 * @param cidade
	 * @param estado
	 */
	public Localizacao(int idLocalizacao, String rua, String numero,
			String bairro, String cep, String cidade, String estado) {
		super();
		this.idLocalizacao = idLocalizacao;
		this.rua = rua;
		this.numero = numero;
		this.bairro = bairro;
		this.cep = cep;
		this.cidade = cidade;
		this.estado = estado;
	}

	public Localizacao() {
		super();
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#toString()
	 */
	@Override
	public String toString() {
		return "Localizacao [id_localizacao=" + idLocalizacao + ", rua=" + rua
				+ ", numero=" + numero + ", bairro=" + bairro + ", cep=" + cep
				+ ", cidade=" + cidade + ", estado=" + estado + "]";
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#hashCode()
	 */
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((bairro == null) ? 0 : bairro.hashCode());
		result = prime * result + ((cep == null) ? 0 : cep.hashCode());
		result = prime * result + ((cidade == null) ? 0 : cidade.hashCode());
		result = prime * result + ((estado == null) ? 0 : estado.hashCode());
		result = prime * result + idLocalizacao;
		result = prime * result + ((numero == null) ? 0 : numero.hashCode());
		result = prime * result + ((rua == null) ? 0 : rua.hashCode());
		return result;
	}

	/* (non-Javadoc)
	 * @see java.lang.Object#equals(java.lang.Object)
	 */
	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Localizacao other = (Localizacao) obj;
		if (bairro == null) {
			if (other.bairro != null)
				return false;
		} else if (!bairro.equals(other.bairro))
			return false;
		if (cep == null) {
			if (other.cep != null)
				return false;
		} else if (!cep.equals(other.cep))
			return false;
		if (cidade == null) {
			if (other.cidade != null)
				return false;
		} else if (!cidade.equals(other.cidade))
			return false;
		if (estado == null) {
			if (other.estado != null)
				return false;
		} else if (!estado.equals(other.estado))
			return false;
		if (idLocalizacao != other.idLocalizacao)
			return false;
		if (numero == null) {
			if (other.numero != null)
				return false;
		} else if (!numero.equals(other.numero))
			return false;
		if (rua == null) {
			if (other.rua != null)
				return false;
		} else if (!rua.equals(other.rua))
			return false;
		return true;
	}
	
	

}
